package com.njwb.day12;

import java.lang.reflect.Proxy;

public class Main {
    public static void main(String[] args) {
 /*       // 创建一个存放 String 的盒子
        Box<String> stringBox = new Box<>("Hello");
        System.out.println("String 类型的值: " + stringBox.getValue());

        // 创建一个存放 Integer 的盒子
        Box<Integer> intBox = new Box<>(123);
        System.out.println("Integer 类型的值: " + intBox.getValue());

        // 创建一个存放 Double 的盒子
        Box<Double> doubleBox = new Box<>(3.14);
        System.out.println("Double 类型的值: " + doubleBox.getValue());*/


        RealService real = new RealService();
        Service proxy = (Service) Proxy.newProxyInstance(
                real.getClass().getClassLoader(),
                real.getClass().getInterfaces(),
                new MyInvocationHandler(real)
        );
        proxy.doSomething();
    }

}
